/**
 *
 * Copyright 2009 Bill Garrett (memesis@gmail.com)
 *
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use
 * this file except in compliance with the License.  You may obtain a copy of the
 * License at
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software distributed
 * under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific
 * language governing permissions and limitations under the License. 
 */
package org.memesis.pandorasbook.actions;

import java.awt.event.ActionEvent;
import java.beans.PropertyVetoException;

import javax.swing.AbstractAction;
import javax.swing.Action;

import org.memesis.pandorasbook.PandoraAppletFrame;

/**
 * This class focuses and brings to front a given window
 *
 * @author garrett
 */
@SuppressWarnings("serial")
public class FocusWindowAction extends AbstractAction {
	private PandoraAppletFrame frame;
	
	public FocusWindowAction(PandoraAppletFrame frame) {
		this.frame = frame;
		this.putValue(Action.NAME, frame.getTitle());
		this.putValue(Action.SHORT_DESCRIPTION, "Focus on this window");
	}

	/* (non-Javadoc)
	 * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
	 */
	@Override
	public void actionPerformed(ActionEvent arg0) {
		try {
			frame.setIcon(false);
		} catch(PropertyVetoException ex) { }
		frame.toFront();
	}
}
